home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
C!T ROM 3
/
ct-rom iiib.zip
/
ct-rom iiib
/
WINDOWS
/
UTILITY
/
MODEM
/
GC101
/
GOCIS.BTN
< prev
next >
Wrap
Text File
|
1993-11-20
|
17KB
|
573 lines
;**************************************************************************
; GoCIS User defined button bar L.Lee 6/30/93
;**************************************************************************
;
; You can redefine buttons to tailor GoCIS to your style and needs.
; This is an example of such a button definition file.
; up to 128 buttons can be defined in a single file. If you need
; more than this I suggest having one button load a separate
; button file..
;
;* [DEFINED.FORMAT] *******************************************************
;
; Some have expressed the need to display more than one row of buttons
; in this case you need to define an optional [DEFINED.FORMAT] section
; this the only section which is not considered a button. In this
; section you can only define two fields (either of which are optional)
;
; Define &MaxRows = (1 to 3 defaults as 1)
; This field defines the number of row of buttons when displayed
; horizontially across the top or bottom on the display
;
; Define &MaxColumns = (1 to 3 defaults as 1)
; This field defines the number of columns of buttons when displayed
; Vertically down the left or right side of the display
;
;
;
;* [BUTTON NAME] **********************************************************
;
; You specify a button name by placing it in braces [name]. The
; name is used internally by GoCIS to identify the button. You can
; use any name you like as long as it is unique within the file.
;
; After the button name you specify the definition of several
; components. Any and all of these are optional. The defined
; variables are used to initially display the button. At the very
; least you should probably define the following:
;
; DEFINE &CAPTION =caption to display on the button
; DEFINE &ICON =the name of an icon (.ICO) file to display on
; the button
; DEFINE &TITLE =text to display as the mouse moves across the
; button
; DEFINE &DRAGMODE =can the button be dragged to a forum?
; (0=no, 1=yes)
;
; Finally comes the actions you'd like carried out as the button is pressed
; this consists of some verb or action and any parameters as appropriate
;
; The following is a list of the commands and the actions
;
; SET &variable =value
; &Variable =value
;
; The varibles that you can set are as follows:
;
; &CAPTION =caption to display on the button
; &ICON =the name of an icon (.ICO) file to display on the button
; &TITLE =text to display as the mouse moves across the button
; &DRAGMODE =can the button be dragged to a forum (0=no, 1=yes);
; &CONFIG =load a new configuration file
; &SCOPE =Set the scope of the action buttons to "VIEW" or "FORUM"
; &VIEW =display this view
; &FORUM =Make this the current forum
; &BAUD =set baud rate to this value
; &PHONE =set phone number to this value
; &FIELD1..5 =user defined to do with as you please
;
;
; +ACTION named-action
; -ACTION named-action
;
; The specified action can be set "+" or removed "-". Actions that
; can be named include:
;
; Join.Forum
; Set.Defaults
; Update.Sections
; Read.Announcements
; Scan.New.Messages
; Read.Messages
; Send.Replies
; Read.New.Messages
; Read.Waiting.Messages
; Scan.Libraries
; Download.Files
; Upload.Files
;
;
;
; +PENDING named-pending-state
; -PENDING named-pending-state
;
; The pending states are the flags that display the fact that
; you have recieved messages, headers, and or catalogs. Pending
; states you can specify include:
;
; LBR (catalogs)
; MSG (messages)
; MQS (headers)
;
;
; LOAD button-filename
;
; Loads a new set of buttons from the specified file
;
; DO ScriptfileName
; RUNSCRIPT ScriptfileName
;
; Both of these are the same and causes GoCIS to execute the given
; communications script. This of course means that GoCIS will be
; loging on to CIS and performing some prescribed actions..
;
; RUN window-state program parameters
; EXECUTE window-state program parameters
; SHELL window-state program parameters
;
; All of these are the same and causes GoCIS to execute the given
; program passing it the specifed parameters. The window-state
; is optional and defaults to NORMAL, but can be specified as
; NORMAL, MAXIMIZED otr MINIMIZED.
;
; WAITAPP Seconds or .fraction-of-second
; WAITSTART Seconds or .fraction-of-second
; WAITEND
;
; Each of these commands can cause GoCIS to suspend execution
; until a "SHELLED" application has started or completed.
; WAITSTART causes the button to pause (N) seconds for the application to start
; WAITEND causes the button to pause until the application ends
; WAITAPP causes the button to pause (N) seconds for the application to start
; and then futher causes the button to pause until the application ends
;
;
;
; PAUSE Seconds or .fraction-of-second
;
; This causes the button to pause before continuing. You can enter
; decimal point to indicate a delay in fractions of a second as well.
; This is useful after using the RUN command since many windows
; programs need a few seconds before they are willing to accept commands
;
;
;
; SENDKEYS keystrokes
;
; Defines the keystrokes to be simulated by the program
;
;
; If you are already familiar with the VB SendKeys function you
; already know the format of the keystrokes that can be sent
; For those of you not familiar with this command the following
; characters have special meaning:
;
; '+' SHIFT
; '^' CONTROL
; '%' ALT
;
; So to simulate an ALT-R you code %R
; CONTROL-R would be ^R and so on...
;
; The following keys can be simulated by enclosing them in braces {}
;
; {ENTER} {HELP} {LEFT} {RIGHT} {UP} {DOWN} {PGDN} {PGUP} {F1 ... F12}
;
; You can repeat a keystroke by specifing the key within braces and
; specifing a count. Fox example you can code:
;
; {TAB}{TAB}{TAB}{TAB} ot {TAB 4}
;
;
; CONDITIONAL LOGIC...
;
; IF.. THEN.. ENDIF
; FOR.. NEXT...
;
; This was never intended to be the do all language it does support
; some very simple conditional commands that can be useful..
;
; IF condition THEN
; ...
; ELSE
; ...
; ENDIF
;
; if the condition is true the commands between the if and endif
; are executed. You can nest if's up to 20 deep.
;
; There are 5 functions that are avaiable to be used only within an
; "IF":
;
; FileExists(filename).. Returns true if the file exists
; FileData(FileName)... Returns date/time of the file
; Today()... Returns current date/time
; Pending(state)... Returns true if the state is pending
; Action(flag)... Returns true if the flag is set
;
;
; FOR EACH FORUM
; ...
; NEXT
;
; This is the only looping construct and it executes commands for between
; FOR..NEXT for each forum listed in the current view...
;
;
;
; <<<< ADDITIONAL NOTES >>>>>
;
; Finally you can use GoCIS variable data that will be replaced when
; the button is pressed with the value of a GoCIS field
;
; For example instead of hard coding a user name you can
; use the &UserName variable, for which GoCIS will substitute
; the cis user name at the time the button os pressed.
;
; The following variables can be used:
;
; &Caption Caption of the button
; &Icon Icon file name of the button
; &Title Title of the button
;
; &ExePath Path to GoCIS.EXE
;
; &ForumName
; &Forum Name of the currently active forum
;
; &ControlPath Path to GoCIS control file
; &MessagePath Path to GoCIS .MSG files
; &DownloadPath Path to GoCIS downloads
; &ScriptPath Path to GoCIS scripts
;
; &Name
; &UserName Name used on CIS
;
; &UserId Account number on CIS
;
; &Password Cis Password
;
;
; &Date
; &Time
; &DDMMMYY
; &YYMMDD Various date and time variables
;
; &ConfigFile Name of currently active configuration file
; &AddressFile Name of currently active address book file
; &ButtonFile Name of currently active ButtonBar file
;
; &Baud Current Baud rate
; &Phone Current Phone number
;
; &Field1..5 User defined fields
;
;
;**************************************************************************
;
[ExitBtn]
;
; EXITBTN - QUICK Exit the program
;
Define &Caption = Exit
Define &Icon = &ExePath\Icons\exit.ICo
Define &Title = EXIT, QUIT, or TERMINATE the program.
SendKeys %FX
[ReadMail]
;
; READMAIL - Show mail latest mail received from CIS
;
Define &Caption = ReadMail
Define &Icon = &ExePath\Icons\Mail10.ICO
Define &Title = Review latest CompuServe Mail.
SendKeys %EL
[SendMail]
;
; SENDMAIL - Create mail to be sent to CIS
;
Define &Caption = SendMail
Define &Icon = &ExePath\Icons\Mail03.ICO
Define &Title = Create CompuServe MAIL to send.
SendKeys %EC
[ScanMail]
;
; SCANMAIL - Specify selection criteria to review historical email
;
Define &Caption = ScanMail
Define &Icon = &ExePath\Icons\MAIL04.ICO
Define &Title = Select CompuServe MAIL for review.
SendKeys %ES
[ReadMsgs]
;
; READMSGS - Show latest forum messages received from CIS
;
Define &Caption = ReadMsgs
Define &Icon = &ExePath\Icons\MAIL11.ICO
Define &Title = Review latest &FORUM forum MESSAGES.
Define &DragMode = 1
SendKeys %RML
[SendMsgs]
;
; SENDMSGS - Create a forum message to be sent
;
Define &Caption = SendMsgs
Define &Icon = &ExePath\Icons\MAIL12.ICO
Define &Title = Create &FORUM forum MESSAGE.
Define &DragMode = 1
SendKeys %RMC
[ScanMsgs]
;
; SCANMSGS - Specify selection criteria to review historical messages
;
Define &Caption = ScanMsgs
Define &Icon = &ExePath\Icons\MAIL13.ICO
Define &Title = Select &FORUM forum MESSAGES for review.
Define &DragMode = 1
SendKeys %RMS
[MarkHdrs]
;
; MARKHDRS - Mark messages headers for download
;
Define &Caption = MarkHdrs
Define &Icon = &ExePath\Icons\PEN06.ICO
Define &Title = Mark &FORUM forum MESSAGE HEADERS for retrieval.
Define &DragMode = 1
SendKeys %RMM
[MarkLib]
;
; MARKLIB - Mark cataloged library records for download
;
Define &Caption = MarkLib
Define &Icon = &ExePath\Icons\FILES07.ICO
Define &Title = Mark cataloged &FORUM forum files for download.
Define &DragMode = 1
SendKeys %RLC
[ScanLib]
;
; SCANLIB - Define criteria to perform an online library search
;
Define &Caption = ScanPtn
Define &Icon = &ExePath\Icons\CRDFLE11.ICO
Define &Title = Specify &FORUM forum library search criteria.
Define &DragMode = 1
SendKeys %RLS
[Change.Baud.Rate]
;
; Cycles through various baud rates
;
Define &Caption = &Baud
Define &Icon = &ExePath\Icons\Baud&Baud.ICo
Define &Title = Baud rate currently set at &Baud, press to change rate to 1200, 2400, 9600, 14400, or 19200
&Field1 = &Baud
If &Baud = 1200 Then
&Field1 = 2400
Endif
If &Baud = 2400 Then
&Field1 = 9600
Endif
If &Baud = 9600 Then
&Field1 = 14400
Endif
If &Baud = 14400 Then
&Field1 = 19200
Endif
If &Baud = 19200 Then
&Field1 = 1200
Endif
&Baud = &Field1
&Icon = &ExePath\Icons\Baud&Baud.Ico
&Caption = &Baud
Echo Baud Rate now set to &Baud.
[EditBtn]
;
; EDITBTN - Allow user to edit this file using notepad.exe
;
Define &Caption = Edit.BTN
Define &Icon = &ExePath\Icons\EditBtn.ICO
Define &Title = EDIT the Button Bar definition.
Run Maximized NotePad.Exe &ButtonFile
;
; we could optionally print and then exit notepad?
;
; SendKeys &FP
; Pause 20
; SendKeys %FX
[EditIni]
;
; EDITINI - Allow user to edit the GoCIS.INI using notepad.exe
;
Define &Caption = Edit.INI
Define &Icon = &ExePath\Icons\Wrench.ICO
Define &Title = EDIT the GoCIS.INI file.
Run Maximized NotePad.Exe &ExePath\GoCIS.INI
WaitStart .50
SendKeys %SFPGM OPTIONS{Enter}{Tab 4}{Enter}{DOWN}{HOME}
;
; we could optionally print and then exit notepad?
;
; SendKeys &FP
; Pause 20
; SendKeys %FX
[Weather]
;
; WEATHER - Go online an get the local weather report
;
Define &Caption = Weather
Define &Icon = &ExePath\Icons\Rain.ICO
Define &Title = Go ONLINE and get local WEATHER information.
; The folloing code insures this is only run once/day
If FileExists(&ScriptPath\Weather.Scr) Then
If FileDate(&MessagePath\Weather.Txt) < Today() Then
RunScript &ScriptPath\Weather.Scr
Endif
If FileExists(&MessagePath\Weather.Txt) Then
Run Maximized NotePad.Exe &MessagePath\Weather.Txt
&Title = Review local WEATHER information.
Else
Echo Cannot locate &Messagepath\Weather.Txt
Beep
Endif
Else
Echo You need to fix the path in this button to point at Weather.SCR
Beep
Endif
; We could add commands to print it via Notepad?
; SendKeys &FP
; Pause 20
; SendKeys %FX
[WhatsNew]
;
; WHATSNEW - Go online an get the lastest "Whats New Report"
;
Define &Caption = WhatsNew
Define &Icon = &ExePath\Icons\WhatsNew.ICO
Define &Title = Go ONLINE and get "WHAT's NEW" from CompuServe.
; The folloing code insures this is only run once/day
If FileExists(&ScriptPath\WhatsNew.Scr) Then
If FileDate(&MessagePath\WhatsNew.Txt) < Today() Then
RunScript &ScriptPath\WhatsNew.Scr
Endif
If FileExists(&MessagePath\WhatsNew.Txt) Then
Run Maximized NotePad.Exe &MessagePath\WhatsNew.Txt
&Title = Review "WHAT's NEW" from CompuServe.
Else
Echo Cannot locate &Messagepath\WhatsNew.Txt
Beep
Endif
Else
Echo You need to fix the path in this button to point at WhatsNew.SCR
Beep
Endif
; We could add commands to print it via Notepad?
; SendKeys &FP
; Pause 20
; SendKeys %FX
[Billing]
;
; BILLING - Go ONLINE and get information on your current CHARGES.
;
Define &Caption = Billing
Define &Icon = &ExePath\Icons\Billing.ICO
Define &Title = Go ONLINE and get information on your current CHARGES.
; The folloing code insures this is only run once/day
If FileDate(&MessagePath\Billing.Txt) < Today() Then
RunScript &ScriptPath\Billing.Scr
Endif
Run Maximized NotePad.Exe &MessagePath\Billing.Txt
&Title = Review your CURRENT CHARGES from CompuServe.
; We could add commands to print it via Notepad?
; SendKeys &FP
; Pause 20
; SendKeys %FX
[Grammatik]
;
; Run Gramatik to spell check my .SND files
;
Define &Caption = Grammatik
Define &Icon = &ExePath\Icons\GMkw.ICO
Define &Title = Spell check a .SND files using Grammatik
If FileExists(C:\GMKW\GMKW.EXE) Then
Run Maximized C:\GMKW\GMKW.EXE
WaitStart 1.5
SendKeys %FO&MessagePath\*.Snd{Enter}
Else
Echo You need to fix the path in this button to point at GRAMATIK.
Beep
Endif
[Super.Button]
;
; This button scans the for all offline pending states and displays each
; corresponding form for you to act upon...
;
Define &Caption = JustDoIt!
Define &Icon = &ExePath\Icons\SuperMan.ICo
Define &Title = For each FORUM, displays all forms for appropriate pending offline actions.
&Field1 = &View
&Field2 = &Forum
&Field3 = 0
&VIEW = [Forums...Pending Offline]
For Each Forum
Echo Scanning &FORUM for offline pending states.
If PENDING(MSG) Then
&Field3 = 1
Echo Messages found in &FORUM.
Beep
Pause .15
SendKeys %RML
EndIF
If PENDING(MQS) Then
&Field3 = 1
Echo Headers found in &FORUM.
Beep
Pause .15
SendKeys %RMM
EndIF
If PENDING(LBR) Then
&Field3 = 1
Echo Catalogs found for &FORUM.
Beep
Pause .15
SendKeys %RLC
EndIF
Next
If &Field3 = 1 Then
Echo Done! Returning to &Field2 in &Field1
Else
Echo No pending offline actions found. Returning to &Field2 in &Field1.
Endif
Beep
&View = &Field1
&Forum = &Field2